package com.bestcem.xm.qdes.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.bestcem.xm.component.mybatis.base.BaseEntity2;
import com.bestcem.xm.component.mybatis.format.String2JacksonSerializer;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import lombok.Data;
import lombok.EqualsAndHashCode;

@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "ds_qdes_taggroup")
public class QdesTagGroup extends BaseEntity2 {

    @TableId(value = "id")
    private String id;

    /**
     * 标签组名称
     */
    @TableField(value = "title")
    private String title;

    /**
     * tag_ids
     */
    @TableField(value = "tag_ids")
    @JsonSerialize(using = String2JacksonSerializer.class)
    @JsonProperty("tag_ids")
    private String tagIds;

    /**
     * True: 官方库, False:企业库
     */
    @TableField(value = "is_official")
    @JsonProperty("is_official")
    private Boolean isOfficial;

    /**
     * 公司ID：公共库公司ID为空
     */
    @TableField(value = "company_id")
    @JsonProperty("company_id")
    private String companyId;

    /**
     * 创建者：公共库创建者为空
     */
    @TableField(value = "creator")
    private String creator;

    /**
     * sort_no
     */
    @TableField(value = "sort_no")
    @JsonProperty("sort_no")
    private Integer sortNo;

    /**
     * 是否是demo数据
     */
    @TableField(value = "is_copy_demo")
    @JsonProperty("is_copy_demo")
    private Boolean isCopyDemo;
}